package com.achievement.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
@TableName("biz_honor_apply_book")
public class HonorApplyBookEntity extends CommonEntity implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    /**
     * ID
     */
    private String id;

    /**
     * 奖励名称
     */
    private String honorName;

    /**
     * 成果名称
     */
    private String productName;

    /**
     * 申请计划ID
     */
    private String applyInfoId;

    /**
     * 所属单位ID
     */
    private String unitId;

    /**
     * 完成单位
     */
    private String completeUnit;

    /**
     * 申请时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date applyDate;

    /**
     * 获奖级别
     */
    private String honorLevel;

    /**
     * 学科门类 2科技类 1社科类
     */
    private String subjectClassId;

    /**
     * 学科分类 1数学 2信息科学与系统科学 3力学
     */
    private String subjectId;

    /**
     * 项目来源 202国家科技支撑计划 206国家科技部
     */
    private String projectSourceId;

    /**
     * 成果形式
     */
    private String productMode;

    /**
     * 备注
     */
    private String note;

    /**
     * 申请书附件
     */
    private String fileIds;

    /**
     * 申请人ID
     */
    private String applierId;

    /**
     * 申请人姓名
     */
    private String applierName;

    /**
     * DIVISION_ID
     */
    private String divisionId;

    /**
     * 申请人学位Id
     */
    private String applierEduDegreeId;

    /**
     * 申请人职称
     */
    private String applierTitleId;

    /**
     * REVIEW_RESULT
     */
    private String reviewResult;

    /**
     * 评审分值
     */
    private Double reviewMark;

    /**
     * 审核状态2审核通过
     */
    @TableField("CHECKSTATUS")
    private String checkstatus;

    /**
     * 审核人
     */
    @TableField("CHECKER")
    private String checker;

    /**
     * 审核时间
     */
    @TableField("CHECKDATE")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date checkdate;


    /**
     * 成果ID
     */
    private String productId;

    /**
     * REVIEW_INFO
     */
    private String reviewInfo;

    /**
     * 获奖情况 0未评审 1建议获奖  2不建议获奖 3已获奖
     */
    private String honorState;
    /**
     * 作者IDS
     */
    @TableField("AUTHORPIDS")
    private String authorpids;
    /**
     * 所有完成人名称字符串
     */
    @TableField("AUTHORNAMES")
    private String authornames;

    @TableField("process_instance_id")
    private String processInstanceId;
}
